home *** CD-ROM | disk | FTP | other *** search
/ Utilities Professional 1-1500 / Utilities Professional 1-1500 (1994)(WPD)[!].iso / 12511500 / var1481.dms / var1481.adf / Scripts / balls.mc < prev    next >
Text File  |  1994-07-07  |  4KB  |  207 lines

  1. int xres = 200
  2. int yres = xres*3/4
  3.  
  4. camera {
  5.     loc    <25, 4, 3>
  6.     target    <0, 0, 0>
  7.     hfov    25
  8.     res    xres yres
  9. }
  10.  
  11. lamp {
  12.     loc    <10, 25, 15>
  13. }
  14.  
  15. int numframes = LASTFRAME-FIRSTFRAME+1
  16.  
  17. real boxXsize = 8
  18. real boxYsize = boxXsize/8
  19. real boxZsize = boxXsize
  20.  
  21. real bigballrad = boxYsize/2
  22. real smallballrad = bigballrad/2
  23.  
  24. real outlooprad = boxXsize/2 - bigballrad
  25. real inlooprad = outlooprad/2
  26.  
  27. real ballheight = bigballrad*1.5
  28.  
  29. int ballsinnloop = 8
  30. int ballsoutloop = 8
  31.  
  32. color red {
  33.     diff    <1, 0, 0>
  34. }
  35.  
  36. color white {
  37.     diff    <1, 1, 1>
  38. }
  39.  
  40. check boxsurf {
  41.     patt1    red
  42.     patt2    white
  43.     xsize    boxXsize/2
  44.     ysize    boxYsize/2
  45.     zsize    boxZsize/2
  46. }
  47.  
  48. box {
  49.     patt    boxsurf
  50.     loc    <-boxXsize/2, -boxYsize, -boxZsize/2>
  51.     v1    <boxXsize, 0, 0>
  52.     v2    <0, boxYsize, 0>
  53.     v3    <0, 0, boxZsize>
  54. }
  55.  
  56. color silver {
  57.     diff    <.7, .7, .7>
  58.     refl    <.5, .5, .5>
  59.     scoef    100
  60.     srefl    1
  61. }
  62.  
  63.  
  64. /* for now, since I haven't written a 'for' loop yet, 
  65.     we have to manually drop the proper # of
  66.     balls in each loop
  67. */
  68.  
  69. real ballangle = 360/ballsoutloop
  70. real frameangle = ballangle/numframes*FRAME
  71. int ballno = 0
  72.  
  73. real angle = ballno*ballangle+frameangle
  74. sphere {
  75.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  76.     radius    bigballrad
  77.     patt    silver
  78. }
  79.  
  80. ballno = ballno+1
  81. angle = ballno*ballangle+frameangle
  82. sphere {
  83.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  84.     radius    bigballrad
  85.     patt    silver
  86. }
  87.  
  88. ballno = ballno+1
  89. angle = ballno*ballangle+frameangle
  90. sphere {
  91.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  92.     radius    bigballrad
  93.     patt    silver
  94. }
  95.  
  96. ballno = ballno+1
  97. angle = ballno*ballangle+frameangle
  98. sphere {
  99.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  100.     radius    bigballrad
  101.     patt    silver
  102. }
  103.  
  104. ballno = ballno+1
  105. angle = ballno*ballangle+frameangle
  106. sphere {
  107.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  108.     radius    bigballrad
  109.     patt    silver
  110. }
  111.  
  112. ballno = ballno+1
  113. angle = ballno*ballangle+frameangle
  114. sphere {
  115.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  116.     radius    bigballrad
  117.     patt    silver
  118. }
  119.  
  120. ballno = ballno+1
  121. angle = ballno*ballangle+frameangle
  122. sphere {
  123.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  124.     radius    bigballrad
  125.     patt    silver
  126. }
  127.  
  128. ballno = ballno+1
  129. angle = ballno*ballangle+frameangle
  130. sphere {
  131.     loc    <outlooprad*cos(angle), ballheight, outlooprad*sin(angle)>
  132.     radius    bigballrad
  133.     patt    silver
  134. }
  135.  
  136. /* the inner ring of balls, rotates opposite the outer */
  137.  
  138. ballangle = 360/ballsoutloop
  139. frameangle = ballangle/numframes*(numframes-FRAME)
  140. ballno = 0
  141.  
  142. ballno = ballno+1
  143. angle = ballno*ballangle+frameangle
  144. sphere {
  145.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  146.     radius    smallballrad
  147.     patt    silver
  148. }
  149.  
  150. ballno = ballno+1
  151. angle = ballno*ballangle+frameangle
  152. sphere {
  153.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  154.     radius    smallballrad
  155.     patt    silver
  156. }
  157.  
  158. ballno = ballno+1
  159. angle = ballno*ballangle+frameangle
  160. sphere {
  161.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  162.     radius    smallballrad
  163.     patt    silver
  164. }
  165.  
  166. ballno = ballno+1
  167. angle = ballno*ballangle+frameangle
  168. sphere {
  169.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  170.     radius    smallballrad
  171.     patt    silver
  172. }
  173.  
  174. ballno = ballno+1
  175. angle = ballno*ballangle+frameangle
  176. sphere {
  177.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  178.     radius    smallballrad
  179.     patt    silver
  180. }
  181.  
  182. ballno = ballno+1
  183. angle = ballno*ballangle+frameangle
  184. sphere {
  185.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  186.     radius    smallballrad
  187.     patt    silver
  188. }
  189.  
  190. ballno = ballno+1
  191. angle = ballno*ballangle+frameangle
  192. sphere {
  193.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  194.     radius    smallballrad
  195.     patt    silver
  196. }
  197.  
  198. ballno = ballno+1
  199. angle = ballno*ballangle+frameangle
  200. sphere {
  201.     loc    <inlooprad*cos(angle), ballheight, inlooprad*sin(angle)>
  202.     radius    smallballrad
  203.     patt    silver
  204. }
  205.  
  206.  
  207.